/*******************************************************************************
* Project: QSAR(Cute Software Architecture)
*
* Copyright: Copyright(C) 2024 by YuetingBen, All Rights Reserved
*
* File name: EcuMType.h
*
* Brief: ;
*
* Author: Yueting.Ben
*
* Module: EcuM
*
*******************************************************************************/

#ifndef ECUMTYPE_H
#define ECUMTYPE_H

/** HEADER FILES **/
#include "PlatformCfg.h" 


/** MACRO DEFINITION **/


/** TYPEDEF DEFINITION **/
typedef uint32 EcuM_WakeupSourceType;
/* Power cycle (bit 0) */
#define ECUM_WKSOURCE_POWER ((EcuM_WakeupSourceType)0x01)
/* Hardware reset (bit 1). If the Mcu driver cannot distinguish between a power cycle and a reset reason, then this shall
be the default wakeup source */
#define ECUM_WKSOURCE_RESET ((EcuM_WakeupSourceType)0x02)
/* Internal reset of uC (bit 2) The internal reset typically only resets the C core but not
peripherals or memory controllers. The exact behavior is hardware specific. This source may also
indicate an unhandled exception. */
#define ECUM_WKSOURCE_INTERNAL_RESET ((EcuM_WakeupSourceType)0x04)
/* Reset by internal watchdog (bit 3) */
#define ECUM_WKSOURCE_INTERNAL_WDG ((EcuM_WakeupSourceType)0x08)
/* Reset by external watchdog (bit4), if detection supported by hardware */
#define ECUM_WKSOURCE_EXTERNAL_WDG ((EcuM_WakeupSourceType)0x10)


#endif

